package demo.container;

import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;

public class HashMapDemo {
    public static void main(String[] args) {
        // 创建一个 HashMap 对象
        HashMap<String, Integer> hashMap = new HashMap<>();

        // 添加键值对
        hashMap.put("张磊", 32);
        hashMap.put("李彦博", 35);
        hashMap.put("王辉", 27);
        hashMap.put("陈汉典", 41);

        // 遍历 HashMap
        for (String key : hashMap.keySet()) {
            Integer value = hashMap.get(key);
            System.out.println("\"" + key + "\"对应的值为：" + value);
        }
        System.out.println("==============================");

        // 获取指定键的值
        Integer value1 = hashMap.get("张磊");
        System.out.println("\"张磊\"对应的值为：" + value1);

        // 修改键对应的值
        hashMap.put("张磊", 68);
        Integer value2 = hashMap.get("张磊");
        System.out.println("修改后\"张磊\"对应的值为：" + value2);
        System.out.println("==============================");

        // 删除指定键的键值对
        hashMap.remove("李彦博");

        // 遍历 HashMap
        for (String key : hashMap.keySet()) {
            Integer value = hashMap.get(key);
            System.out.println("\"" + key + "\"对应的值为：" + value);
        }
        System.out.println("==============================");

        // 创建一个 TreeMap 对象
        Map<String, String> treeMap = new TreeMap<>();

        // 向 TreeMap 中添加键值对
        treeMap.put("c", "cat");
        treeMap.put("a", "apple");
        treeMap.put("b", "banana");

        // 遍历 TreeMap
        for (Map.Entry<String, String> entry : treeMap.entrySet()) {
            System.out.println(entry.getKey() + ": " + entry.getValue());
        }
    }
}
